@tool
@icon("../icons/atomic_state.svg")
class_name State_Atomic
extends State

#region 属性
#endregion
#region 字段
#endregion
#region 信号
#endregion

#region 基类方法
func handle_transition(transition:Transition,source:State):
	var target = transition.resolve_target()
	if target is not State:
		push_error("目标{0}不是一个State".format([str(transition.to)]))
		return
	# 原子State无法转换，需要请求parent
	get_parent().handle_transition(transition,source)
#endregion
#region 公共方法
#endregion
#region 私有方法
#endregion
#region 生命周期函数
func _get_configuration_warnings() -> PackedStringArray:
	var warnings:Array = super()
	for child in get_children():
		if child is State:
			warnings.append("原子State不能有State子节点，它们会被忽略")
			break
	return warnings
#endregion
